//package cn.yym.test.servlet;
//
//import cn.yym.test.domain.User;
//import cn.yym.test.service.IUserService;
//import cn.yym.test.service.impl.IUserServiceImpl;
//import org.apache.commons.codec.digest.DigestUtils;
//
//import javax.servlet.ServletException;
//import javax.servlet.annotation.WebServlet;
//import javax.servlet.http.HttpServlet;
//import javax.servlet.http.HttpServletRequest;
//import javax.servlet.http.HttpServletResponse;
//import javax.servlet.http.HttpSession;
//import java.io.IOException;
//
///**
// * @author  ming
// */
//@WebServlet(value = "/login", name = "LoginServlet")
//public class UserServlet extends HttpServlet {
//    // ctrl + shift + 左右键
//    private IUserService userService = new IUserServiceImpl();
//
//    /**
//     * 在数据库密码存储上会采取一定加密机制。md5(不可逆).  了解：加盐。
//     * @param req
//     * @param resp
//     * @throws ServletException
//     * @throws IOException
//     */
//    @Override
//    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
//
//        req.setCharacterEncoding("utf-8");
//        resp.setContentType("txt/html;charset=utf-8");
//        resp.setCharacterEncoding("utf-8");
//        String username = req.getParameter("username");
//        String password = req.getParameter("password");
//        /**
//         * 将密码做md5运算之后的字符串。
//         * 例如：1 -> c4ca4238a0b923820dcc509a6f75849b, 然后再数据库中去比较密文
//         */
//        String md5Pwd = DigestUtils.md5Hex(password);
//        User user = userService.loginUser(username, md5Pwd);
//        /**
//         *  1.当用户为空，表示用户名和密码错误，然后要回到登录页面。
//         *  2. 要给用户一个提示信息： "用户名或密码错误".
//         *  3. 要重定向到登录页面.
//         */
//        if(null == user) {
//            // 如果通过请求转发到登录页面的时候，用户一直刷新，会一直拿着错误的用户名/密码在校验。
//            resp.sendRedirect("login.jsp?code=error");
//        }else {
//            /**
//             * 正确的处理流程：
//             *    1.设置到session中。
//             *    2.到首页，重定向到 /people 对应的Servlet.
//             */
//            HttpSession session = req.getSession();
//            session.setAttribute("user", user);
//
//            /**
//             * 为什么需要重定向到 PeopleServlet, 从后台携带参数到主页。
//             */
//          resp.sendRedirect("index");
//        }
//    }
//}
